﻿using NewsCollection.Common.Service;
using NewsCollection.Common.UpdateGUI;
using NewsCollection.Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace NewsCollection.ListWeb
{
    class DepComVn
    {
        ProcessDb pdb = new ProcessDb();
        UpdateButton updateBtn = new UpdateButton();
        public  void Run(ListView lv, Button btnStart, Button btnStop, int manuId,string folder)
        {

            Load load = new Load(lv);
            List<CategoryModel> ListCate = new List<CategoryModel>();

        
            string urlGoc = "http://dep.com.vn";


            ListCate = load.LoadCatesWithSub("http://dep.com.vn", "//div[@class='column-hdr']//h2", "//ul[@class='subcat']", urlGoc, manuId,"","//a","//a",null,false);


            int dem = 0;



            for (int i = 0; i < ListCate.Count(); i++)
            {
             
             

                    // featured news

                     List<NewsItemModel> ListFeaturedNews = new List<NewsItemModel>();
                        var loadFeatured1 = load.LoadUpdateNewHomeNews(ListCate[i], "//div[@class='category-featured clearfix']//div[@class='topstory']//div[@class='story']", "//p[@class='title']//a", "", "//p[@class='photo']//a", urlGoc);
                        var loadFeatured2 = load.LoadUpdateNewHomeNews(ListCate[i], "//div[@class='category-featured clearfix']//div[@class='more-topstory']//div[@class='story']", "//p[@class='title']//a", "", "//p[@class='photo']//a", urlGoc);
                        ListFeaturedNews.AddRange(loadFeatured1);
                        ListFeaturedNews.AddRange(loadFeatured2);

                        for (int k = 0; k < ListFeaturedNews.Count(); k++)
                        {
                            var item = load.LoadNews(ListFeaturedNews[k], "//div[@class='article-body article-style-01']", "//div[@class='summary']", manuId,0, "//div[@class='article-body article-style-01']//img",urlGoc,true);
                            if (item != null)
                            {
                                dem++;
                                item.Hot = "Tin hot";
                                load.AddItemToListView(item);
                                pdb.SaveImgFeatured(folder, item);

                            }

                            //if (dem == 30)
                            //    break;
                        }



                        List<NewsItemModel> ListDetail = new List<NewsItemModel>();
                    var load1 = load.LoadUpdateNewHomeNews(ListCate[i],"//div[@class='category-storylisting']//div[@class='story clearfix']", "//p[@class='title']//a", "//p[@class='summary']", "//p[@class='title']//a", urlGoc);
                  


                    ListDetail.AddRange(load1);
                   
                    for (int k = 0; k < ListDetail.Count(); k++)
                    {
                        var item = load.LoadNews(ListDetail[k], "//div[@class='article-body article-style-01']", "", manuId, 0, "//div[@class='article-body article-style-01']//img",urlGoc,false);
                        if (item != null)
                        {
                            dem++;
                            load.AddItemToListView(item);
                            pdb.SaveImgNormal(folder, item);

                        }

                        //if (dem == 30)
                        //    break;
                    }

               

                    //if (dem == 30)
                    //    break;
                
                //if (dem == 30)
                //    break;

            }
        //    System.Windows.Forms.MessageBox.Show("\nThanh cong!Co " + dem + " tin moi");

            updateBtn.UpdateButtonStartAfterRun(btnStart);
            updateBtn.UpdateButtonStopAfterRun(btnStop);
            //updateBtn.UpdateAfterRun(btnStart,btnStop);
            //if (dem == 0)
            //{
            //    MessageBox.Show("\nKhong co san pham moi!");
            //}
            //else MessageBox.Show("\nCo "+dem + " san pham moi");






        }


    }
}
